package com.yungu.swift.system.sys.model.vo;

import com.yungu.swift.base.model.BaseDto;
import lombok.Data;

import java.util.Date;

@Data
public class SysUserVo extends BaseDto {
    /**
     * 用户状态(1:正常、2：删除)
     */
    public static final Integer STATUS_NORMAL = 1;
    public static final Integer STATUS_DELETED = 2;
    /**
     * 用户类型1:超级管理员 2：管理员
     */
    public static final Integer USER_TYPE_PRIMARY = 1;
    public static final Integer USER_TYPE_SUB = 2;

    public static final int LEVEL_APP = 1;
    public static final int LEVEL_AGENT = 2;
    public static final int LEVEL_COMPANY = 3;


    /**
     * 用户名称
     **/
    private String userName;

    /**
     * 用户账号
     **/
    private String userAccount;

    /**
     * 头像
     **/
    private String face;

    /**
     * 用户类型（1：主账号、2：子账号）
     **/
    private Integer userType;

    /**
     * 用户角色
     **/
    private String userRole;

    /**
     * 用户状态（1:正常、2：删除）
     **/
    private Integer status;

    /**
     * 企业标识符
     **/
    private String companyUuid;

    /**
     * 代理标识符
     **/
    private String agentUuid;

    /**
     * 应用标识符
     **/
    private String appid;

    /**
     * 最后一次重置密码时间
     **/
    private Date resetPasswordDate;

    /**
     * 登录失败次数
     **/
    private Integer loginErrorTime;

    /**
     * 登录失败时间
     **/
    private Date loginErrorDate;

    /**
     * 用户每次登录唯一标识
     **/
    private String token;

    //附加字段
    /**
     * 角色名称
     */
    private String roleName;
    /**
     * 级别
     */
    private String level;
    /**
     * 用户手机号
     */
    private String userMobile;

    /**
     * 首次登陆（0：是、 1：否）
     */
    private Integer firstLogin;

    //操作日志附加字段
    /**
     * 操作原因
     */
    private String operationReason;
    /**
     * 操作类型
     */
    private Integer operationType;
}
